package com.yyaccp.easybuy.security.vo;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

@ConfigurationProperties(prefix = "auth")
@Data
public class AuthProperties {
    /**
     * 鉴权模式
     * url: 基于url鉴权
     * annotation: 基于@PreAuthorize注解鉴权
     */
    private String mode = "annotation";
    /**
     * 基于url鉴权时，是否支持restful风格路径
     * 如果restful为true，需要在数据库中存储method的值，获取用户权限的urls时请组装成GET_/users/{id}格式
     */
    private boolean restful = false;
    /**
     * 使用哪种token的实现，可选择 redis/jwt/jwt-redis
     * 如果选择jwt，将在jwt的payload存储用户名、角色、权限等
     */
    private String tokenImpl = "redis";
    /**
     * 无需鉴权的url, 可匿名访问
     */
    private String excludedList ="/login,/register";
}
